//package com.bosssoft.trainee.until;
//
//import com.alibaba.fastjson.JSONObject;
//import com.auth0.jwt.JWT;
//import com.auth0.jwt.algorithms.Algorithm;
//import lombok.extern.slf4j.Slf4j;
//import org.slf4j.Logger;
//import org.slf4j.LoggerFactory;
//import org.springframework.stereotype.Component;
//
//import java.util.HashMap;
//import java.util.Map;
//
///**
// * @author liuqiang
// * @date 2022/7/5 9:44
// * 生成JWT token
// */
//@Component
//@Slf4j
//
//public class JwtUntil {
//    private static final Logger logger = LoggerFactory.getLogger(JwtUntil.class);
//
//    //私钥
//    private static final String TOKEN_SECRET = "123456";
//
//    /**
//     * 生成token，自定义过期时间 毫秒
//     *
//     * @param map
//     * @return String
//     */
//    public static String generateToken(Map<String, String> map) {
//        try {
//            // 私钥和加密算法
//            Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);
//            // 设置头部信息
//            Map<String, Object> header = new HashMap<>(2);
//            header.put("Type", "Jwt");
//            header.put("alg", "HS256");
//
//            return JWT.create()
//                    .withHeader(header)
//                    .withClaim("token", JSONObject.toJSONString(map.get("UserName")))
//                    //.withExpiresAt(date)
//                    .sign(algorithm);
//        } catch (Exception e) {
//            logger.error("generate token occur error, error is:{}", e);
//            return null;
//        }
//    }
//
//    /**
//     * 检验token是否正确
//     *
//     * @param token
//     * @return
//     */
////    public static UserTokenDTO parseToken(String token) {
////        Algorithm algorithm = Algorithm.HMAC256(TOKEN_SECRET);
////        JWTVerifier verifier = JWT.require(algorithm).build();
////        DecodedJWT jwt = verifier.verify(token);
////        String tokenInfo = jwt.getClaim("token").asString();
////        return JSON.parseObject(tokenInfo, UserTokenDTO.class);
////    }
//}
